[server default]

##设置mysql中监控用户和密码,这个密码是前文中创建监控用户的那个密码
user={{ mysql.mha.user }}
password={{ mysql.mha.passwd }}

##设置manager的工作目录
manager_workdir=/usr/local/mha

##设置manager的日志
manager_log=/usr/local/mha/manager.log

##设置master 保存binlog的位置,以便MHA可以找到master的日志,我这里的也就是mysql的数据目录
master_binlog_dir=/mysql/product/binlog

##设置复制环境中的复制用户名和复制用户的密码
repl_user={{ mysql.master_slave.user }}
repl_password={{ mysql.master_slave.passwd }}

##设置ssh的登录用户名
ssh_user=root

##设置监控主库,发送ping包的时间间隔,默认是3秒,尝试三次没有回应的时候自动进行railover
ping_interval=1
ping_type=CONNECT

##设置自动failover时候的切换脚本
master_ip_failover_script=/usr/local/scripts/master_ip_failover

##设置手动切换时候的切换脚本
master_ip_online_change_script=/usr/local/scripts/master_ip_online_change

{%- set slave_ips = [] %}  
{%- for host in groups[mysql.group] %}  
  {%- if hostvars[host]['db_role'] == 'slave' %}  
    {%- set _ = slave_ips.append('-s ' ~ hostvars[host]['ansible_ssh_host']) %}  
  {%- endif %}  
{%- endfor %}

secondary_check_script=/usr/bin/masterha_secondary_check {{ slave_ips | join(' ') }}
#secondary_check_script=/soft/mha4mysql-manager-0.58/bin/masterha_secondary_check -s 192.168.5.126 -s 192.168.5.127

##设置发生切换后发送的报警的脚本
report_script=/usr/local/scripts/send_report

#shutdown_script="" 设置故障发生后关闭故障主机脚本（该脚本的主要作用是关闭主机放在发生脑裂,这里没有使用)

{% for host in groups[mysql.group] %}  
[server{{ loop.index }}]
hostname={{ hostvars[host]['ansible_ssh_host'] }}
ssh_port=22
master_binlog_dir=/mysql/product/binlog
port={{ mysql.port }}
{%- if hostvars[host]['candidate_master'] == 1 %}  
candidate_master=1
check_repl_delay=0
{% else %} 
no_master=1
{% endif %}
{% endfor %}
